package com.tebiecloud.order.client.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.tebiecloud.common.mybatis.base.entity.AbstractEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 订单
 * @author tebie
 * @date 2019-10-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class Orderr extends AbstractEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 订单id
     */
    @TableId(value = "order_id", type = IdType.ID_WORKER)
    private Long orderId;

    /**
     * 订单所属门店id
     */
    private Long storeId;

    /**
     * 订单号
     */
    private String number;

    /**
     * 顾客标识id
     */
    private Long userId;

    /**
     * 联系电话
     */
    private String phone;

    /**
     * 收货地址（不包含实物时不需要收货地址）
     */
    private String address;

    /**
     * 收货人
     */
    private String receiver;

    /**
     * 收货人头像
     */
    private String receiverHeadimgurl;

    /**
     * 订单状态，0已取消1待付款2待收货3已发货4已收货(已核销)5退款中6已退款
     */
    private Integer status;

    /**
     * 订单总费用（单位：分）
     */
    private Integer price;

    /**
     * 发票类型，0无需开发票1个人2单位
     */
    private Integer invoiceType;

    /**
     * 单位名称
     */
    private String unitName;

    /**
     * 纳税人识别号
     */
    private String recognitionCode;

    /**
     * 订单关联的活动id
     */
    private Long actId;

    /**
     * 活动名称
     */
    private String actName;

    /**
     * 活动图片
     */
    private String actPic;

    /**
     * 活动类型：1爆品活动，2礼包活动
     */
    private Integer actType;

    /**
     * 其他服务收费（单位：分）
     */
    private Integer extraCost;

    /**
     * 余额支付，单位分
     */
    private Integer payBalances;

    /**
     * 美乖乖支付，单位分
     */
    private Integer payMgg;

    /**
     * 实际支付，单位分
     */
    private Integer payReady;

    /**
     * 支付类型：1微信支付，2现金支付，3刷卡支付
     */
    private Integer payType;

    /**
     * 超时支付，关闭订单时间
     */
    private Date shutTime;

    /**
     * 收银员id
     */
    private Long cashierId;

    /**
     * 收银员名称
     */
    private String cashierName;

}
